<script>
    // 箭头函数没有自己的this,箭头函数中的this是当前所处环境的this，所处环境this是谁，箭头函数中this就是谁
    // 环境：全局作用域 和 局部作用域


    let fn1 = ()=>{  //所处环境是全局 this->window
        console.log("fn1",this);
    }

    fn1();

    let fn2 = ()=>{ //所处环境是全局 this->window
        console.log("fn2",this);
    }

    fn2.call([1,2,3]);




    // 在构造函数中
    function Person(){
        console.log(this); //this-> Person {}

        let fn=()=>{
            console.log("fn",this);
        }
        fn();
    }
    new Person();


    let obj = {
        say(){
            console.log("say",this);
        },

        hello(){
            console.log("hello",this);
        },
        test:()=>{
            console.log("test",this);
        }
        
    };

    console.log(obj);
    obj.say();
    obj.hello();
    obj.test();  //window  对象不是当前箭头函数所处环境，现在所处环境是全局



    // document.onclick = function(){
    //     console.log(this);
    // }

    document.onclick = ()=>{  //所处环境是全局 this->window
        console.log(this); //window
    }

</script>